/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package bm.forms;
import bm.data.Coche;
import java.util.regex.*;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.*;

/**
 *
 * @author Anita
 */
public class CocheForm extends ActionForm{

    private Coche coche;

     public CocheForm() {
        super();

        coche = new Coche();
    }

     /**
     *  Validacion
     */
    @Override
    public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {

        ActionErrors errors = new ActionErrors();

        //marca
        if ( this.getMarca().equals("")) {
            errors.add("marca", new ActionMessage("error.campoObligatorio"));

        }else if (!Pattern.matches("\\w+",  this.getMarca())) {
            errors.add("marca", new ActionMessage("error.nombreIncorrecto"));
        }

        //modelo
        if ( this.getModelo().equals("")) {
            errors.add("modelo", new ActionMessage("error.campoObligatorio"));

        }else if (!Pattern.matches("\\w+",  this.getModelo())) {
            errors.add("modelo", new ActionMessage("error.nombreIncorrecto"));
        }

        //caracteristicas
        if ( this.getCaracteristicas().equals("")) {
            errors.add("caracteristicas", new ActionMessage("error.campoObligatorio"));

        }else if (!Pattern.matches("[\\w\\s\\,]+",  this.getCaracteristicas())) {
            errors.add("caracteristicas", new ActionMessage("error.nombreIncorrecto"));
        }

        //precio
        if (this.getPrecio()!=0) {
            errors.add("precio", new ActionMessage("error.campoObligatorio"));

        }/*else if (!Pattern.matches("[0-9]", this.getPrecio())) {
            errors.add("precio", new ActionMessage("error.campoNumerico"));
        }*/

        //year
        if (this.getYear().equals("")) {
            errors.add("year", new ActionMessage("error.campoObligatorio"));

        }else if (!Pattern.matches("[0-9]+", this.getYear())) {
            errors.add("year", new ActionMessage("error.campoNumerico"));
        }

        //descripcion
        if (this.getDescripcion().equals("")) {
            errors.add("descripcion", new ActionMessage("error.campoObligatorio"));

        }else if (!Pattern.matches("[\\w\\s\\,]+", this.getDescripcion())) {
            errors.add("descripcion", new ActionMessage("error.nombreIncorrecto"));
        }

        //stock
        if (this.getStock()!=0) {
            errors.add("stock", new ActionMessage("error.campoObligatorio"));

        }/*else if (!Pattern.matches("\\w+", this.getStock())) {
            errors.add("stock", new ActionMessage("error.campoNumerico"));
        }*/

        //imagen
        if (this.getImagen().equals("")) {
            errors.add("imagen", new ActionMessage("error.campoObligatorio"));

        }else if (!Pattern.matches("[\\w\\.\\s\\-\\\\]+", this.getImagen())) {
            errors.add("imagen", new ActionMessage("error.nombreIncorrecto"));
        }
     
        return errors;
    }

    public Coche getCoche(){
        return coche;
    }
/*
    //ID_COCHE
    public int getIdCoche() {
        return coche.getIdCoche();
    }

    public void setIdCoche(int id_coche) {
        coche.setIdCoche(id_coche);
    }
*/
    //MARCA
    public String getMarca() {
        return coche.getMarca();
    }

    public void setMarca(String marca) {
        coche.setMarca(marca);
    }

    //MODELO
    public String getModelo() {
        return coche.getModelo();
    }

    public void setModelo(String modelo) {
        coche.setModelo(modelo);
    }

    //CARACTERISTICAS
    public String getCaracteristicas() {
        return coche.getCaracteristicas();
    }

    public void setCaracteristicas(String caracteristicas) {
        coche.setCaracteristicas(caracteristicas);
    }

    //PRECIO
    public float getPrecio() {
        return coche.getPrecio();
    }

    public void setPrecio(float precio) {
        coche.setPrecio(precio);
    }

    //YEAR
    public String getYear() {
        return coche.getYear();
    }

    public void setYear(String year) {
        coche.setYear(year);
    }

    //DESCRIPCION
    public String getDescripcion() {
        return coche.getDescripcion();
    }

    public void setDescripcion(String descripcion) {
        coche.setDescripcion(descripcion);
    }

     //DESCRIPCION
    public int getStock() {
        return coche.getStock();
    }

    public void setStock(int stock) {
        coche.setStock(stock);
    }

     //DESCRIPCION
    public String getImagen() {
        return coche.getImagen();
    }

    public void setImagen(String imagen) {
        coche.setImagen(imagen);
    }
}
